<!DOCTYPE html>
<html>
	<head>
		<meta charset="utf-8">
		<title>layui</title>
		<meta name="renderer" content="webkit">
		<meta http-equiv="X-UA-Compatible" content="IE=edge,chrome=1">
		<meta name="viewport" content="width=device-width, initial-scale=1, maximum-scale=1">
		<link rel="stylesheet" href="../../lib/layui-v2.5.5/css/layui.css" media="all">
		<link rel="stylesheet" href="../../css/public.css" media="all">


	</head>
	<body>
		<div class="layuimini-container">
			<div class="layuimini-main">

				<fieldset class="table-search-fieldset">
					<legend>搜索信息</legend>
					<div style="margin: 10px 10px 10px 10px">
						<form class="layui-form layui-form-pane" action="">
							<div class="layui-form-item">
								<div class="layui-inline">
									<label class="layui-form-label">主机IP</label>
									<div class="layui-input-inline">
										<input type="text" name="computerIp" autocomplete="off" class="layui-input">
									</div>
								</div>
								<!-- 					<div class="layui-inline">
									<label class="layui-form-label">端口状态</label>
									<div class="layui-input-inline">
										<input type="text" name="status" autocomplete="off" class="layui-input">
									</div>
								</div> -->


								<div class="layui-inline">
									<button type="submit" class="layui-btn layui-btn-primary" lay-submit lay-filter="data-search-btn"><i class="layui-icon"></i>
										搜 索</button>
								</div>
							</div>
						</form>
					</div>
				</fieldset>

				<script type="text/html" id="toolbarDemo">
					<div class="layui-btn-container"> 主机列表 </div>
          
        </script>

				<table class="layui-hide" id="currentTableId" lay-filter="currentTableFilter"></table>

				<script type="text/html" id="currentTableBar">
					<a class="layui-btn layui-btn-xs layui-btn-danger data-count-edit" lay-event="edit">备注</a>
					<a class="layui-btn layui-btn-normal layui-btn-xs data-count-edit" lay-event="detail">详情</a>
					<a class="layui-btn layui-btn-normal layui-btn-xs data-count-edit" lay-event="process">进程</a>
			<a class="layui-btn layui-btn-xs layui-btn-danger data-count-delete" lay-event="delete">删除</a>
        </script>


			</div>
		</div>

		<script src="../../lib/layui-v2.5.5/layui.js" charset="utf-8"></script>
		<script src="../../js/lay-config.js" charset="utf-8"></script>

		<script>
			layui.use(['form', 'table', 'http'], function() {
				var $ = layui.jquery,
					form = layui.form,
					table = layui.table,
					http = layui.http;


				table.render({
					elem: '#currentTableId',
					url: http.api + 'sys/findAll',
					toolbar: '#toolbarDemo',
					defaultToolbar: ['filter', 'exports', 'print', {
						title: '提示',
						layEvent: 'LAYTABLE_TIPS',
						icon: 'layui-icon-tips'
					}],
					cols: [
						[{
								field: 'computerIp',
								//width: 150,
								title: 'IP',
								align: "center"
							},
							{
								field: 'computerRemark',
								//width: 150,
								title: '备注',
								align: "center"
							},
							// {
							// 	field: 'osArch',
							// 	//width: 150,
							// 	title: '系统架构',
							// 	align: "center"
							// },
							{
								field: 'osName',
								title: '操作系统',
								align: "center"
							},
							{
								field: 'csys',
								title: 'cpu占用率',
								align: "center",
								templet: function(d) {
									if (d.csys < 80) {
										return '<span class="layui-btn layui-btn-xs layui-btn-radius layui-btn-normal">' + d.csys + '%' +
											'</span>'
									} else {
										return '<span class="layui-btn layui-btn-xs layui-btn-radius layui-btn-danger">' + d.csys + '%' +
											'</span>'
									}
								}
							},
							{
								field: 'usageRate',
								title: '内存占用率',
								align: "center",
								templet: function(d) {

									if (d.usageRate * 100 < 80) {
										return '<span class="layui-btn layui-btn-xs layui-btn-radius layui-btn-normal">' + d.usageRate * 100 +
											'%' + '</span>'
									} else {
										return '<span class="layui-btn layui-btn-xs layui-btn-radius layui-btn-danger">' + d.usageRate * 100 +
											'%' + '</span>'
									}
								}
							},
							{
								field: 'usage',
								title: '硬盘占用率',
								align: "center",
								templet: function(d) {
									if (d.usage * 100 < 80) {
										return '<span class="layui-btn layui-btn-xs layui-btn-radius layui-btn-normal">' + d.usage * 100 + '%' +
											'</span>'
									} else {
										return '<span class="layui-btn layui-btn-xs layui-btn-radius layui-btn-danger">' + d.usage * 100 + '%' +
											'</span>'
									}
								}
							},
							{
								field: 'usage',
								title: '主机状态',
								align: "center",
								templet: function(d) {
									if (d.ifsocket == 0) {
										return '<span class="layui-btn layui-btn-xs layui-btn-radius layui-btn-normal">在线中</span>'
									} else if (d.ifsocket == 1) {
										return '<span class="layui-btn layui-btn-xs layui-btn-radius layui-btn-danger">已离线</span>'
									} else {
										return '<span class="layui-btn layui-btn-xs layui-btn-radius layui-btn-disabled">待定中</span>'
									}
								}
							},
							{
								title: '操作',
								width: 250,
								toolbar: '#currentTableBar',
								align: "center"
							}
						]
					],
					limits: [10, 15, 20, 25, 50, 100],
					limit: 15,
					page: true,
					skin: 'line',
				});

				// 监听搜索操作
				form.on('submit(data-search-btn)', function(data) {
					var result = JSON.stringify(data.field.computerIp);

					result = result.replace("\"", "").replace("\"", "");

					//执行搜索重载
					table.reload('currentTableId', {
						where: { //设定异步数据接口的额外参数，任意设

							computerIp: result
						},
						page: {
							curr: 1 //重新从第 1 页开始
						}
					}); //只重载数据
					return false;
				});

				/**
				 * toolbar监听事件
				 */
				table.on('toolbar(currentTableFilter)', function(obj) {
					if (obj.event === 'add') { // 监听添加操作
						var index = layer.open({
							title: '添加用户',
							type: 2,
							shade: 0.2,
							maxmin: true,
							shadeClose: true,
							area: ['100%', '100%'],
							content: 'add.html',
						});
						$(window).on("resize", function() {
							layer.full(index);
						});
					} else if (obj.event === 'delete') { // 监听删除操作
						var checkStatus = table.checkStatus('currentTableId'),
							data = checkStatus.data;
						layer.confirm('真的删除么?', function(index) {
							for (j = 0, len = data.length; j < len; j++) {
								var id = data[j].id;
								$.ajax({
									type: "post",
									async: false,
									url: http.api + 'port/deleteById',
									data: "id=" + id,
									dataType: "json",
									success: function(response) {
										if (response.code == 0) {

										} else {
											window.history.go(-1);
										}

									},
									error: function(e) {

										alert("请求异常。");
									}
								});

							}
							layer.close(index);
							location.reload();
						});

					}


				});

				//监听表格复选框选择
				table.on('checkbox(currentTableFilter)', function(obj) {
					console.log(obj)
				});

				table.on('tool(currentTableFilter)', function(obj) {

					var computerIp = obj.data.computerIp;
					var computerRemark = obj.data.computerRemark;

					if (obj.event === 'edit') {

						var index = layer.open({
							title: '编辑主机备注信息',
							type: 2,
							shade: 0.2,
							maxmin: true,
							shadeClose: true,
							area: ['100%', '100%'],
							content: 'edit.html',
							success: function(layero, index) {

								var body = layer.getChildFrame('body', index);
								body.find('#computerIp').val(computerIp)
								body.find('#computerRemark').val(computerRemark)

							},
							end: function() {
								//window.parent.location.reload();//刷新父页面
								location.reload();
							}

						});
						$(window).on("resize", function() {
							layer.full(index);
						});
						return false;
					} else if (obj.event === 'delete') {
						layer.confirm('真的删除么?  注：删除该主机后请撤销jar包', function(index) {
							$.ajax({
								type: "post",
								async: false,
								url: http.api + 'sys/deleteByIp',
								data: "computerIp=" + computerIp,
								dataType: "json",
								success: function(response) {
									if (response.code == 0) {
										obj.del();
										layer.close(index);


									} else {
										window.history.go(-1);
									}

								},
								error: function(e) {
									console.log(data)
									alert("请求异常。");
								}
							});


						});
					} else if (obj.event === 'detail') { // 监听详情操作

						var index = layer.open({
							title: '主机详情信息',
							type: 2,
							shade: 0.2,
							maxmin: true,
							shadeClose: true,
							area: ['100%', '100%'],
							content: 'detail.html?ip='+computerIp,
							success: function(layero, index) {
							
								var body = layer.getChildFrame('body', index);
								body.find('#computerIp').val(computerIp)
							},
							end: function() {
								//window.parent.location.reload();//刷新父页面
								location.reload();
							}

						});
					} else if (obj.event === 'process') { // 监听详情操作

						var index = layer.open({
							title: '主机进程信息',
							type: 2,
							shade: 0.2,
							maxmin: true,
							shadeClose: true,
							area: ['100%', '100%'],
							content: 'process.html',
							success: function(layero, index) {

								var body = layer.getChildFrame('body', index);
								body.find('#computerIp').val(computerIp)


							},
							end: function() {
								//window.parent.location.reload();//刷新父页面
								location.reload();
							}

						});
					}
				});

			});
		</script>

	</body>
</html>
